package com.clps.dev.sms.sm.dao;

import java.util.List;

import com.clps.dev.sms.sm.pojo.Employee;



/**
 * 
 * @author jiangying
 *
 * 2017年12月23日下午7:12:04
 * @param <T>
 */
public interface EmployeeDAO<T> {
	
	
	
	public boolean addEmployee(Employee emp);

	/**
	 * 删除 用户
	 * 
	 * @param Employee  用户
	 * @return  返回true删除用户成功   false删除用户失败
	 */
    public boolean deleteEmployeeById(Employee emp);
    
    /**
     * 修改 用户信息
     * @param Employee 用户
     * @return  返回true修改用户信息成功   false修改用户信息失败
     */
    public boolean updateEmployeeById(Employee emp);
    
    
    /**
     * 激活  用户
     * @param String，String  用户名   密码
     * @return 返回true激活用户成功   false激活用户失败
     */
    
   /* public boolean updateEmployeeStatus(String user_name,String password);*/
    
    /**
     * 根据传入的用户id 查1
     * 
     * @param Integer 用户id
     * @return Employee用户
     */
    public Employee getEmployeeById(String user_id);
    
    /**
     *根据用户姓名  模糊查询
     * 
     * @param Employee 用户
     * @return Employee 用户
     *//*
    public Employee getEmployeeByName(Employee useinfo);*/
    
    
 
    /**
     * 分页 查所有
     * @param int  当前页
     * @param int  页长
     * @param int  总记录数
     * @return List
     */
    public List<Employee> queryAll(int currentPage, int pageSize,int totalRecord);//查所有
    
    /**
     * 登录
     * 
     * 根据传入的用户名 和 密码 查1
     * 
     * @param  String String 用户名  密码
     * @return Employee 用户
     */
    public List<Employee> getPageByQuery(String user_name, String password) throws Exception;
    
    /**
     * 
     * 根据传入的 角色id 查 用户组
     * 
     * @param Object
     * 
     * @return  List用户集合
     *  
     */
    public List<Employee> getEmployeeGroup(Object...args) throws Exception;
    
   /* *//**
     * 
     * 根据传入的 角色id 修改该用户对应的角色id为null(当某角色被删除，不存在时，用户设置角色id为null)
     * 
     * @param Integer 角色id
     * 
     * @return  返回true修改成功  false修改失败
     *  
     *//*
    public boolean updateEmployeeRole(Integer role_id)throws Exception;*/
     
	
	
}
